﻿/*************************************************************************************

- CLR版本：        4.0.30319.42000
- 类 名 称：       Appbus
- 机器名称：       YTE
- 命名空间：       LD.Host
- 文 件 名：       Appbus
- 创建时间：       2022/6/10 9:11:11
- 作    者：       YTE
- 说   明：
- 修改时间：
- 修 改 人：
  *************************************************************************************/

using LD.BC;
using LD.Host.WIP;
using System;

namespace LD.Host
{
    public static class Appbus
    {
        /// <summary>
        /// 机种
        /// </summary>
        public static PartNoHelper PartNo
        {
            get; set;
        } = new PartNoHelper();

        /// <summary>
        /// 用户
        /// </summary>
        public static UserHelper User
        {
            get; set;
        } = new UserHelper();

        /// <summary>
        /// 设备状态
        /// </summary>
        private static StateEnum state = StateEnum.手动模式;
        public static StateEnum StateEnum
        {
            get { return state; }
            set
            {
                BcFactory.Instance.RunModel = value;
                state = value;
                BcFactory.Instance.StartStop.ClosedLight();
                if (state == StateEnum.手动模式)
                {
                    Cache.SetCache(CONST.BC_ISRESET, false);
                    FlowHelper.StopAll();
                    BcFactory.Instance.StartStop.Light(LightEnum.黄灯, LevelType.低电平);
                }
                else
                    BcFactory.Instance.StartStop.Light(LightEnum.绿灯, LevelType.低电平);

                PubSub.Hub.Default.Publish(value);
            }
        }
        /// <summary>
        /// 根目录
        /// </summary>
        public static string BasePath
        {
            get { return AppDomain.CurrentDomain.BaseDirectory; }
        }
        /// <summary>
        /// 视觉设置
        /// </summary>
        public static object CCD { get; set; }
        /// <summary>
        /// MES设置
        /// </summary>
        public static object Mes { get; set; }
        /// <summary>
        /// BC设置
        /// </summary>
        public static object BC { get; set; }
        public static WipHelper Wip { get; set; } = new WipHelper();
    }
}
